using System;
using System.Collections;
using System.Xml.Serialization;

namespace TextParsing.GraphStructure
{
	public class Document
	{
		private string m_fileName;
		private long m_totalTermCount;
		private long m_uniqueTermCount;
		private long m_totalSentenceCount;

		private ArrayList m_nodes;

		public Document()
		{
			m_nodes = new ArrayList();
		}

		[XmlElement("file-name")]
		public string FileName
		{
			get { return m_fileName; }
			set { m_fileName = value; }
		}

		[XmlElement("total-term-count")]
		public long TotalTermCount
		{
			get { return m_totalTermCount; }
			set { m_totalTermCount = value; }
		}

		[XmlElement("unique-term-count")]
		public long UniqueTermCount
		{
			get { return m_uniqueTermCount; }
			set { m_uniqueTermCount = value; }
		}

		[XmlElement("total-sentence-count")]
		public long TotalSentenceCount
		{
			get { return m_totalSentenceCount; }
			set { m_totalSentenceCount = value; }
		}

		[XmlArrayItem("node",typeof(Node),IsNullable = true)]
		[XmlArray]
		public IList Nodes
		{
			get { return m_nodes; }
		}

	}
}
